import {Home} from "../utils/api";//调用api里的路由地图
export default {//创建并导出vuex
    namespaced:true,//可以被访问自己的名字
    state:{//存放保存在仓库中的数据
        islnit:false,//辨别数据是否初始化
        list:[],//存储主页数据
        nav:[],//导航数据
        carousel:[],//轮播图
        icon:[],//等分图标
        irregularity_img:[],//不规则排序的图片
    },
    mutations:{//更改state中的数据，只有mutations有资格
        _init(state,payload){//第一个参数state是自己的仓库，第二个payload是传过来的数据
            state.islnit = true;//初始化变成true
            state.list = payload;
        },
        _all(state,payload){//获取服务器里的nav数据和轮播图等
            state.nav = payload.nav;
            state.carousel = payload.carousel;
            state.icon = payload.icon;
            state.irregularity_img = payload.irregularity_img;
        }
    },
    actions:{//执行一些异步耗时操作，比如请求数据
        //解构context里的commit，rootState,commit第一个参数调用mutations里的函数第二个参数传的值。
        init({commit,rootState:{$http}}){//rootState总仓库的$http解构
            $http.post(Home.HOME)
                .then(result => commit("_init",result.data));
            $http.post(Home.ALL)
                .then(result => commit("_all",result));
        },
    },
};